perfect number program